package cn.iocoder.yudao.framework.datasource.core;

import lombok.Data;

import javax.validation.constraints.NotBlank;

/**
 * 数据源配置数据对象
 *
 * @author 芋道源码
 */
@Data
public class DataSourceConfigDO {

    /**
     * 数据源标识，唯一键
     */
    @NotBlank(message = "数据源标识不能为空")
    private String dataSourceKey;

    /**
     * 数据源名称
     */
    private String name;

    /**
     * 数据库连接URL
     */
    @NotBlank(message = "数据库连接URL不能为空")
    private String url;

    /**
     * 数据库用户名
     */
    @NotBlank(message = "数据库用户名不能为空")
    private String username;

    /**
     * 数据库密码
     */
    @NotBlank(message = "数据库密码不能为空")
    private String password;

    /**
     * 数据库类型
     */
    @NotBlank(message = "数据库类型不能为空")
    private String type;

    /**
     * 是否启用
     */
    private Boolean enabled = true;

    /**
     * 备注
     */
    private String remark;

    public DataSourceConfigDO() {}

    public DataSourceConfigDO(String dataSourceKey, String url, String username, String password, String type) {
        this.dataSourceKey = dataSourceKey;
        this.url = url;
        this.username = username;
        this.password = password;
        this.type = type;
    }
}